package cn.org.exam.model.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 用户实体类，对应 sys_user 表
 */
@Data
@TableName("sys_user")
public class User {

    /** 用户ID */
    private Long id;

    /** 登录用户名 */
    private String username;

    /** 加密后的密码（BCrypt） */
    private String password;

    /** 昵称 */
    private String nickname;

    /** 是否启用 */
    private Boolean enabled;

    /** 创建时间 */
    private LocalDateTime createTime;

    /** 更新时间 */
    private LocalDateTime updateTime;

    /**
     * 多角色列表
     * 来源于 sys_user_role → sys_role
     */
    /** 多角色，不在 sys_user 表里，只在 sys_user_role 里，所以要忽略 */
    @TableField(exist = false)
    private List<Role> roles;
}

